const { tap } = require("lodash")

module.exports = {
    configureWebpack: {
        resolve: {
            alias: {
                "assets": '@/assets',
                "common": '@/common',
                "components": '@/components',
                "views": '@/views',
                "network": '@/network',
            }
        }
    },
    chainWebpack: config => { 
        // 发布模式
        config.when(process.env.NODE_ENV === 'production', config => {
            //处于发布阶段的入口文件
            config.entry('app').clear().add('./src/main-prod.js')
            config.set('externals', {
                vue: 'Vue',
                'vue-router': 'VueRouter',
                axios: 'axios',
                nprogress: 'NProgress',
                'vue-quill-editor': 'VueQuillEditor',
                jquery: '$'
            })
            config.plugin('html').tap(args => {
                args[0].isProd = true
                return args
            })
        })

        // 开发模式   
        config.when(process.env.NODE_ENV === 'development', config => {
         //产品处于开发阶段的入口文件
            config.entry('app').clear().add('./src/main-dev.js')
            config.plugin('html').tap(args => {
                args[0].isProd = false
                return args
            })
        })
    }
}
